using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.Serialization;

namespace PSE.Hosting.ServiceHoster.Business
{
    /// <summary>
    /// Exception raised from the Service Hoster when it receives an invalid package parameter.
    /// Throwed by the following methods: 
    ///    StartAll()
    ///    StartPackage()
    ///    RemovePackage()
    ///    StopPackage()
    /// </summary>
    public class InvalidPackageException : Exception
    {
        /// <summary>
        /// Default contructor
        /// </summary>
        public InvalidPackageException() : base() { }

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="message">The exception message.</param>
        public InvalidPackageException(string message): base(message) { }

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="message">The exception message.</param>
        /// <param name="innerException">The inner exception object.</param>
        public InvalidPackageException(string message, Exception innerException) : base(message, innerException) { }

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="info"></param>
        /// <param name="context"></param>
        public InvalidPackageException(SerializationInfo info, StreamingContext context) : base(info, context) { }
    }
}
